#ifndef TOWER_H
#define TOWER_H
#include <QString>
#include "tower_base.h"

class Tower:public tower_base
{
private:
    int Width;
    int Height;
    float angle;
    QRect _mRect;
    QString Tower_Type;
    QPixmap _mPix;
    float velocity_rotation;//炮台转速
    bool _angle_ready;
    int fireInterval;
    int coolDown;
    bool fireReady;

public:
    Tower(const QString& type,int a,int b);
    int GetWidth();
    int GetHeight();
    QRect GetRect();
    QString GetType();
    QPixmap& GetPix();
    virtual ~Tower();
    float GetAngle();
    void SetAngle(double);
    float Get_velocity_rotation();
    void Set_Angle_Ready(bool);
    bool Get_Angle_Ready();
    bool IfFireReady();
    void FireCoolDown();
    void ResetCoolDown();
public slots:
    virtual void UpDataStatu() override;
};

#endif // TOWER_H
